package com.lh.iterator;

import java.util.Iterator;
import java.util.List;

//输出数据
public class OutputImpl {

    //学院集合
    List<College> collegeList;

    public OutputImpl(List<College> collegeList) {
        this.collegeList = collegeList;
    }

    //遍历所有学院，然后调用printDepartment，输出各个学院的系
    public void printCollege() {
        //从 collegeList 取出所有学院,java中的List已经实现了 Iterator接口
        Iterator<College> iterator = collegeList.iterator();

        while (iterator.hasNext()) {
            //取出一个学院
            College college = iterator.next();
            System.out.println("=====" + college.getName() + "======");
            //得到了对应的迭代器
            printDepartment(college.createIterator());
        }

    }


    //输出学院，输出系
    public void printDepartment(Iterator iterator) {
        while (iterator.hasNext()) {
            Department department = (Department) iterator.next();
            System.out.println(department.getName());
        }
    }


}
